/*
 *************************************************************************
 *西瑞克斯研发管理系统
 *版 本: 1.0   
 *日 期：02/16/2012    
 *作 者： 王浩 QQ：873987060   
 *************************************************************************   
 */
package com.application.yfprojectplan.entity;

import org.apache.commons.lang.builder.ReflectionToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
import com.manager.IBaseBean;
import com.manager.commons.StringUtil;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 
 * Description:YfProjectPlan实体<br />
 * 
 * Version:V0.1<br />
 * 
 * Author: 王浩 QQ：873987060 <br />
 * 
 * History: <br />
 * 
 * 02/16/2012
 * 
 */
@Entity
@Table(name = "yf_project_plan")
public class YfProjectPlan implements IBaseBean {

	/** serialVersionUID */
	protected static final long serialVersionUID = -1L;

	public YfProjectPlan() {

	}

	@Id
	@Column(name = "id")
	private String id; // $field.label

	@Column(name = "project_no")
	private String projectNo; // $field.label

	@Column(name = "project_manager")
	private String projectManager; // $field.label

	@Column(name = "remark")
	private String remark; // $field.label

	@Column(name = "audit_status")
	private Long auditStatus; // $field.label

	@Column(name = "process_id")
	private String processId; // $field.label

	@Column(name = "org")
	private String org; // $field.label

	@Column(name = "operateid",updatable=false)
	private String operateid; // $field.label

	@Column(name = "create_date")
	private Date createDate; // $field.label

	
	
	@Column(name = "plan_type")
	private String planType; // $field.label

	@Column(name = "change_reson")
	private String changeReson; // $field.label

	@Column(name = "change_plan")
	private String changePlan; // $field.label

	@Column(name = "change_cdate")
	private Date changeCdate; // $field.label

	@Column(name = "delay_day")
	private Float delayDay; // $field.label
	
	@Column(name = "bg_type")
	private String bgType; // $field.label
	
	
	@Transient
	private String projectName;
	@Transient
	private String projectOrg;
	@Transient
	private String projectOrgName;
	
	@Transient
	private Long projectType;
	@Transient
	private String workItemId;
	@Transient
	private String rname;
	@Transient
	private String changeCdateStr;

	public String getProjectName() {
		return projectName;
	}

	public void setProjectName(String projectName) {
		this.projectName = projectName;
	}

	public String getProjectOrg() {
		return projectOrg;
	}

	public void setProjectOrg(String projectOrg) {
		this.projectOrg = projectOrg;
	}

	public Long getProjectType() {
		return projectType;
	}

	public void setProjectType(Long projectType) {
		this.projectType = projectType;
	}

	public String getWorkItemId() {
		return workItemId;
	}

	public void setWorkItemId(String workItemId) {
		this.workItemId = workItemId;
	}

	/**
	 * ${field.getLabel()}
	 * 
	 * @return Returns the Id.
	 */
	public String getId() {
		return this.id;
	}

	/**
	 * @param id
	 *            Set the id.
	 */
	public void setId(String id) {
		this.id = id;
	}

	/**
	 * ${field.getLabel()}
	 * 
	 * @return Returns the ProjectNo.
	 */
	public String getProjectNo() {
		return this.projectNo;
	}

	/**
	 * @param projectNo
	 *            Set the projectNo.
	 */
	public void setProjectNo(String projectNo) {
		this.projectNo = projectNo;
	}

	/**
	 * ${field.getLabel()}
	 * 
	 * @return Returns the ProjectManager.
	 */
	public String getProjectManager() {
		return this.projectManager;
	}

	/**
	 * @param projectManager
	 *            Set the projectManager.
	 */
	public void setProjectManager(String projectManager) {
		this.projectManager = projectManager;
	}

	/**
	 * ${field.getLabel()}
	 * 
	 * @return Returns the Remark.
	 */
	public String getRemark() {
		return this.remark;
	}

	/**
	 * @param remark
	 *            Set the remark.
	 */
	public void setRemark(String remark) {
		this.remark = remark;
	}

	/**
	 * ${field.getLabel()}
	 * 
	 * @return Returns the AuditStatus.
	 */
	public Long getAuditStatus() {
		return this.auditStatus;
	}

	/**
	 * @param auditStatus
	 *            Set the auditStatus.
	 */
	public void setAuditStatus(Long auditStatus) {
		this.auditStatus = auditStatus;
	}

	/**
	 * ${field.getLabel()}
	 * 
	 * @return Returns the ProcessId.
	 */
	public String getProcessId() {
		return this.processId;
	}

	/**
	 * @param processId
	 *            Set the processId.
	 */
	public void setProcessId(String processId) {
		this.processId = processId;
	}

	/**
	 * ${field.getLabel()}
	 * 
	 * @return Returns the Org.
	 */
	public String getOrg() {
		return this.org;
	}

	/**
	 * @param org
	 *            Set the org.
	 */
	public void setOrg(String org) {
		this.org = org;
	}

	/**
	 * ${field.getLabel()}
	 * 
	 * @return Returns the Operateid.
	 */
	public String getOperateid() {
		return this.operateid;
	}

	/**
	 * @param operateid
	 *            Set the operateid.
	 */
	public void setOperateid(String operateid) {
		this.operateid = operateid;
	}

	/**
	 * ${field.getLabel()}
	 * 
	 * @return Returns the CreateDate.
	 */
	public Date getCreateDate() {
		return this.createDate;
	}

	/**
	 * @param createDate
	 *            Set the createDate.
	 */
	public void setCreateDate(Date createDate) {
		this.createDate = createDate;
	}

	public String toString() {
		return ReflectionToStringBuilder.toString(this,
				ToStringStyle.MULTI_LINE_STYLE);
	}

	public String getRname() {
		return rname;
	}

	public void setRname(String rname) {
		this.rname = rname;
	}

	public String getProjectOrgName() {
		return projectOrgName;
	}

	public void setProjectOrgName(String projectOrgName) {
		this.projectOrgName = projectOrgName;
	}

	public String getPlanType() {
		return planType;
	}

	public void setPlanType(String planType) {
		this.planType = planType;
	}

	public String getChangeReson() {
		return changeReson;
	}

	public void setChangeReson(String changeReson) {
		this.changeReson = changeReson;
	}

	public String getChangePlan() {
		return changePlan;
	}

	public void setChangePlan(String changePlan) {
		this.changePlan = changePlan;
	}

	public Date getChangeCdate() {
		return changeCdate;
	}

	public void setChangeCdate(Date changeCdate) {
		this.changeCdate = changeCdate;
	}

	public Float getDelayDay() {
		return delayDay;
	}

	public void setDelayDay(Float delayDay) {
		this.delayDay = delayDay;
	}
	public String getChangeCdateStr() {
		String re = "";
		if (this.changeCdate == null) {
			return re;
		}
		try {
			re = StringUtil.dateToString(this.changeCdate);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return re;
	}

	public String getBgType() {
		return bgType;
	}

	public void setBgType(String bgType) {
		this.bgType = bgType;
	}
}
